As less highly trained and technically competent persons use computers it has become more desirable to simplify their operation and make the computer "user friendly". One successful technique has been to provide the user choices on a cathode ray tube ("CRT") and to have the user manipulate a cursor to select one of the choices. Of the known techniques one of the most popular is cursor control through a "mouse". The cursor is a dot or line on the CRT which can be moved under the control of the user. A "mouse" is a small box or housing which the user can freely move over a horizontal surface, such as a desk. The cursor generally follows the movements of the mouse. That is, if the mouse is moved horizontally, the cursor moves horizontally.
Early mice were mechanical. Illustrative of this type of mouse is that shown in Hawley U.S. Pat. No. 3,892,963. The movable housing carries two position wheels which rotate about axes which are perpendicular.
One wheel has its axis aligned with the longitudinal axis of the housing and the other wheel has its axis aligned along the transverse axis of the housing. Each axis is connected to an optical encoder, which sends signals to the computer to control cursor movement on one axis of the CRT. The cursor translates on the CRT along a vector which forms an angle to the vertical-up direction on the CRT equal to the angle between the vector that is aligned with the motion of the mouse and the vector aligned with the longitudinal-forward axis of the mouse. Thus, the cursor follows the movement that the mouse makes with respect to itself and is independent of the orientation of the mouse with respect to the surface upon which it translates. Other mechanical mice are taught by Engelbart U.S. Pat. No. 3,541,541; Koster U.S. Pat. No. 3,541,521; and Page U.S. Pat. No. 4,303,914.
These mechanical mice are of course limited by various mechanical constraints. For example, satisfactory frictional contact has to exist between the horizontal surface and the position wheels. Furthermore, manufacturing processes are relatively expensive because of the required mechanical tolerances. Also mechanical mice are subject to mechanical wear and can be easily damaged by dropping.
Meyer U.S. Pat. No. 3,297,879, discloses one encoder that overcomes many of these disadvantages. In one embodiment of Meyer, a stationary grid, comprising mutually orthogonal sets of parallel nonreflective bands, is formed on a reflective surface. A light source and four photocells are incorporated into a movable reading head. The light source illuminates the grid and the photocells detect reflected light from the grid. A plate having four sets of transmissive slits, two of which are aligned with each set of parallel, non-reflective bands, is positioned in front of the photocells, each photocell being associated with one set of slits. The slits in each of the two sets of slits associated with each set of bands are aligned out of phase. During movement of the reading head the amount of light reflected by the reflective space between the nonreflective bands and received by each photocell via the intervening slits oscillates between dark and light, causing each photocell to output a pulsating signal. The number of pulsations depends upon the number of bands which have been crossed and thus is indicative of the distance traveled. Moreover, since the slits are out of phase, the movement of the reading head in one direction will cause the output of one of the two correspondingly aligned photocells to precede the other by a quarter cycle and movement in the opposite direction will cause the other photocell to precede the one by a quarter cycle. Thus, the encoder is direction sensitive. Meyer also produces two signals, each representing one orthogonal direction. However, because Meyer's housing must maintain a given angular relation with the surface, the housing in Meyer must be physically constrained. Accordingly, Meyer mounts his housing on a four-bar parallel linkage or on an X-Y set of orthogonal parallel guides. Furthermore, Meyer has the disadvantage of requiring both a surface and a screen having optically readable markings.
Grossimon U.S. Pat. No. 3,410,956, discloses a digital encoder for detecting motion in a single direction comprising a transducer head and grid plate configuration (see FIG. 7a). In this embodiment, a transducer head comprising three separate photocells 406, 408, 410 is mounted above the grid 400. The grid comprises alternate translucent sectors 401 and opaque sectors 402, sectors 402 being twice as wide as sectors 401. The "active" areas of the photocells are staggered as depicted in FIG. 7a. These active areas have a width equal to the width of the translucent sectors. This transducer provides the necessary information for the determination of the magnitude and direction of changes in position of the transducer head. The magnitude of the change in position is proportional to the number of times the illumination (i.e. photoactivation) is shifted from one photocell to another. As is the case in the mouse of the present application, the direction of motion in the FIG. 7a embodiment of the Grossimon et al. reference is determined by the order of illumination. However, in order to detect motion in both the X and Y directions, it is necessary according to Grossimon et al. to provide a second system for use in connection with the system of FIG. 7a. Thus, the Grossimon et al. reference requires two separate perpendicular grids of parallel lines.
Kirsch U.S. Pat. No. 4,390,873 ("Kirsch I") shows an attempt to emulate optically the prior art mechanical mice. Kirsch I comprises a mouse housing having a light source and a four-quadrant photodetector, a surface having an optically contrasting checkerboard pattern having various assigned position states over which the mouse housing translates, and a logic circuit having a read only memory. Each of the squares in the checkerboard pattern defines a position state in two directions at the same location. As the housing translates over the surface the logic interprets the output from all of the four detectors, refers to the read only memory to determine the position state at which the housing is located, and produces an output signal to represent the housing's position in relation to the surface.
Although the Kirsch I mouse is not physically restrained, it suffers from many of the same disadvantages which attend other prior art optical mouses. Because of its surface pattern and the assignment of position states to indicia thereon, the Kirsch I mouse is limited to determining movement in only two directions. The Kirsch I mouse cannot determine the direction of movement along the checkerboard square diagonals due to the ambiguous detector outputs at opposite corners of a square. Also, the Kirsch I mouse cannot operate when rotated 45.degree. relative to the grid surface since the microprocessor is programmed to recognize only changes in position which result in two quadrants of the four-quad detector changing their output.
Thus, unlike the prior art mechanical mice, the Kirsch I mouse is sensitive to its orientation with respect to the surface pattern. A rotation of the mouse greater than 45.degree. in either direction from the nominal pattern orientation affects the decoded signal.
Another optical mouse is shown in Kirsch U.S. Pat. No. 4,364,035 (Kirsch II). It discloses a read head employing a movable detector which slides over a surface having two parallel sets of perpendicular lines, each set being of a different color. The detector includes a light source which emits light of each color in an alternating sequence. Four light detectors are positioned for receiving light reflected from the surface. By clocking the emission of the respectively colored light and the detector output signal, electrical outputs are obtained representing reflection from the respective sets of colored lines. Such signals are used to establish line crossings, thereby deriving a position signal for the cursor.
The Kirsch II mouse also has the disadvantage that the output is indicative of mouse housing movement with respect to the surface pattern. Thus, it too is sensitive to surface orientation. Furthermore, the use of two colors results in a mouse system that is more complicated than is the case in a "single color" system. Differently colored marks must be applied to the surface, two light sources must be incorporated in the system, and clocking means must be provided for activating the respective light sources in alternating sequences in accordance with the decoding technique. Also, since an acceptable two-color grid requires the use of precisely controlled amounts of exotic inks, the manufacture of the grid becomes a difficult and expensive process.
Co-pending U.S. patent application Ser. No. 582,281 to Matthews and assigned to the assignee of the present invention discloses an optical mouse having a four-quad detector and a grid pattern of lines which form squares therebetween having a length of the side equal to twice the width of a line. As disclosed below, the present invention utilizes the same detector and grid pattern. The Matthews mouse has a shortcoming in that the detector outputs do not accurately reflect the geometry of the grid pattern when the optical lens of the mouse is non-ideal, i.e. degraded, the use of an ideal lens being commercially unacceptable. The Matthews mouse does not disclose the input of three different threshold voltages to the comparators for obtaining four-level resolution for compensation of optical distortion. Furthermore, the Matthews mouse does not disclose means for resolving the ambiguous straddle position of the mouse using a look-ahead technique with data compression.
Another pertinent prior art reference is Bilbrey et al. U.S. Pat. No. 4,543,571, which discloses an opto-mechanical mouse. A four-quad photodetector is optically coupled to a non-reflective grid of lines applied to a reflective surface for determining the distance of mouse travel by the counting of line crossings. The Bilbrey et al. mouse requires a separate mechanical system for determining direction.
Other electro-optical mouse systems of interest are disclosed in Kirsch U.S. Pat. No. 4,546,347 and Lyon U.S. Pat. No. 4,521,772.